﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Negocio.clases_tontas;

namespace Negocio.catalogos
{
    public class catalogoDocente
    {
        DocenteServicio.DocenteServicioSoapClient _objServicioDocente = new DocenteServicio.DocenteServicioSoapClient();


        public docente consultarDocenteXIdcedula(string _cedula)
        {
            docente _docente = null;

            try
            {
                var resultDocente = _objServicioDocente.ObtenerDocentesCedula(_cedula).First();

                if (resultDocente != null)
                {
                    _docente = new docente(resultDocente.Id_Docente, resultDocente.Nombres, new catalogoCarrera().obtenerCarrera(resultDocente.Id_Docente).First());
                }
                return _docente;
            }
            catch (Exception)
            {

                return _docente;
            }
        }

            public docente consultarDocenteXId(int _idDocente)
            {
                docente _docente = null;

                try
                {
                    var resultDocente = _objServicioDocente.ObtenerDocentesId(_idDocente.ToString()).First();

                    if (resultDocente != null)
                    {
                        _docente = new docente(resultDocente.Id_Docente, resultDocente.Nombres, new catalogoCarrera().obtenerCarrera(resultDocente.Id_Docente).First(),resultDocente.Cedula);
                    }
                    return _docente;
                }
                catch (Exception)
                {

                    return _docente;
                }
            }

        /// <summary>
        /// obtiene todos los docentes por carrera q existan
        /// </summary>
        /// <param name="_idCarrera"></param>
        /// <returns></returns>
        public List< docente> consultarDocentesXIdCarrera(int _idCarrera)
        {
            List<docente> _docente = new List< docente>();

            try
            {
                foreach (var item in _objServicioDocente.ObtenerDocentesCarrera(_idCarrera))
                {
                    _docente.Add(new docente(item.Id_Docente, item.Nombres, new catalogoCarrera().obtenerCarrera(item.Id_Docente).First()));
                }


                return _docente;
            }
            catch (Exception)
            {

                return _docente;
            }
        }
    }
}
